home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
FishMarket 1.0
/
FishMarket v1.0.iso
/
fishies
/
526-550
/
disk_542
/
chemnimate
/
compiling.doc
< prev
next >
Wrap
Text File
|
1992-05-06
|
4KB
|
118 lines
=============================================================================
CHEMNIMATE 0.8 alpha-release COMPILING.DOC
=============================================================================
Klaas van Gend Raymond Knaapen
Hoekerstraat 9b Veldstraat 26
5987 AN EGCHEL 5988 AK HELDEN
THE NETHERLANDS THE NETHERLANDS
REVISION HISTORY
----------------
Ver 1. KvGend 27Jul91 wrote this document.
Rev 1. RKnaapen 06Aug91 revision.
Rev 2. KvGend 28Aug91 corrected all 'åƳ' etc. Raymond brought in by editing
it in WordPerfect 5.1...
ChemNiMate was written using the DICE 2.06.18R C compiler,
written by Matt Dillon. Dice is a Public Domain/ShareWare
compiler, I use the ShareWare( US$ 50) version of it. It is an
almost 100% ANSI compiler, all missing stuff will be
implemented soon.
Dice HAS a make utility (dMake), but I don't understand the
manual so I don't use it. Instead of that I use the front-end
quite extensively:
To Compile it with DICE:
setenv DCCOPTS "-r -v -1.3 -f -new"
dcc tokenlist3.c ch14.c 2nd7.c parser11.c SrcBm4.o
the switches do the following:
-r the compiler will generate a pure programme
(residentable).
-v verbose
-1.3 use the 1.3 includes & Amiga.lib
-f allow a Ctrl-C break when using the AmigaShell
-new only compile a file when the date/time of the "#?.c" is
newer than the date/time of the "#?.o"
Also DCC automatically specifies two switches itself:
-mc Small Code memory model
-md Small Data memory model
The code is written in such a way that any normal C compiler
should be able to compile it without much real problems.
I don't know enough of either SAS/Lattice nor Manx to tell you
how to compile it using them.
If the executable generated by your compiler is shorter than
mine, please let me know, as Dice normally generates shorter
code than either Manx or Lattice.
For the public Domain version of Dice, please refer to FISH #466.
PORTABILITY OF CHEMNIMATE.
Almost the whole source is written in plain ANSI-C. I'll
comment the various files:
tokenlist3.c no problem.
parser11.c should be no problem.
For the following files, you'll need some adaptations.
2nd7.c Is purely Amiga-specific code. Might be hard to convert.
It contains of 3 functions:
SetUp() Initialise the screens etcetera.
Quit() Do the reverse.
SwapShow() Change the front & backpage of the double
buffering system.
SrcBm4.c Contains only one function:
LoadPic() which loads the picture of all balls in the third
bitmap.
This function is only called once: in SetUp().
ch14.c Contains the main() and some other functions.
In PutBalls() is one Amiga function used
(BltBitMap).
All other functions are done using macros, i.e.
LINETO(x,y); is by the preprocessor converted
to Draw (rastport,x,y); .
Generally, somebody who knows his sytem, should be able to
port chemnimate. Only, it isn't really necessary. Almost no
other computer is able to handle graphics fast enough,
without having to program all stuff in Assembler. Besides,
these computers aren't able to create a normal TV signal, thus
they require either a camcorder (BOO!) or some very expensive
hardware.
Thanks to Amiga.
Besides, a friend of mine (Raymond) is at the moment writing
his interpretation of this programme, in TurboPascal. He
wanted to write it from scratch, but he chose some other
techniques to develop. The result are two completely dif-
ferent programmes. To be honest: Mine is faster and better.
(Sorry Raymond).
### Here is Raymond writing:
# To be honest: Klaas' program is finished and mine isn't.
# E.g. He can program his animations, I still can't.
# As Klaas said before he has an Amiga. I have an AT with a
# multi-leg-beetle (also called 80286) which has to do
# everything, including grahics, so my program ain't fast (well,
# maybe it is when compared to a ZX81).
#
# Besides, our programmes don't differ as much as Klaas said.
# His program is faster and better? Well, mine looks better!!
#
# When finished, my program will have the same options as
# Klaas' program. Only it won't be as fast as his.
#
# By the way, I like some postcards, too.
###
So, that was Raymond. Hey, Rayder, thanks for spoiling the bytes!
That was it.